/*
    Geocache: some utilities for managing and visualizing geocache information
    Copyright (C) 2008  Gary Jackson

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
/*
 * GpxToPointSet.java
 */

package com.thegbomb.geocache;

import com.thegbomb.common.Mapper;
import com.thegbomb.common.SingleIterator;
import com.thegbomb.sphere.Polygon;
import com.thegbomb.sphere.PropertiesPointSet;
import com.thegbomb.sphere.PropertiesPolygon;
import java.util.Iterator;

/**
 *
 * @author Gary Jackson
 */
public class PointSetToHull implements Mapper<PropertiesPointSet, PropertiesPolygon> {
    public Iterator<PropertiesPolygon> map(PropertiesPointSet input) {
        Polygon p = input.convexHull();
        PropertiesPolygon pp = new PropertiesPolygon(p.getPoints(), input.getProperties());
        return new SingleIterator<PropertiesPolygon>(pp);
    }
}
